1. Field of the Invention
The present invention relates to a numerical control apparatus and a feed control processing method therefor. More particularly, the invention relates to a numerical control apparatus and a feed control processing method for a numerical control apparatus, which performs feed control in a machine tool or machining robot.
2. Description of the Related Art
In a machining of a curved surface, such as in a die machining, it can occur that the amount of movement to be called for by one block of commands in a machining program prepared for a CAD (computer aided design) or CAM (computer aided manufacturing) system or the like is smaller than a minimum amount of movement that depends on a feed speed and a one-sampling period of an associated numerical control apparatus.
If feed control is attempted on the basis of an amount of movement smaller than the minimum amount of movement, as that amount is called for by one block of commands, it then so follows that a movement to be made by that block of commands is completed within the one-sampling period of the numerical control apparatus, and a feed-suspended state is maintained until a subsequent sampling period starts. As a result, there is made an intermittent feed, with which a moving state and a suspended state are repeated, by which vibrations are caused in an associated feed system, resulting in a rough machined surface.
It is possible to reduce shocks due to such vibrations, by reducing the gain (or response speed) of the feed control. However, such a reduction of gain accompanies a worsened tracking performance, and causes the machining accuracy to be wholly lowered. It also increases the steady-state error of an associated servo system, and gives rise to errors such as by a shortened radius in a circular interpolation and a sagging at a corner, again resulting in a lowered machining accuracy.
In the past, therefore, in cases in which the amount of movement by one block of commands was smaller than a minimum amount of movement, the speed of feed was reduced over an entirety of an associated machining program to make the amount of movement by one block of commands larger than the minimum amount of movement, so that a continuous feed was secured.
While the above-noted approach of reducing the overall feed speed of the machining program if the amount of movement called for by a block of commands is smaller than the minimum amount of movement is effective in avoiding intermittent feed, the reduction in feed speed is accompanied by an inevitable loss of machining capacity.
Accordingly, in view of the above-described problem with the related art, it is an object of the present invention to provide a numerical control apparatus and a feed control processing method for a numerical control apparatus, which achieve continuous feed and further achieve both machining accuracy and machining capacity, without reducing the feed speed.
To achieve the above-noted object, a method for feed control in a numerical control apparatus according to the present invention reads a machining program, and determines if the amount of movement required by one block of commands is less than or greater than the minimum amount of movement, which is established by the feed speed and one sampling period of the numerical control apparatus. If the amount of movement for the block of commands is determined as being larger than the minimum movement amount, feed control is performed in accordance with the block of commands. If, however, the amount of movement is smaller than the minimum amount of movement, a block is synthesized from the current block and the immediately next block, this synthesis being continued until the amount of movement called for by the synthesized block is greater than the minimum movement amount, at which point feed control is performed in accordance with thereby synthesized block.
Another form of the present invention that achieves the above-noted object is a numerical control apparatus that determines if the amount of movement required by one block of commands is less than or greater than the minimum amount of movement, which is established by the feed speed and one sampling period of the numerical control apparatus, and which performs feed control according that block of commands if the amount of movement required is greater than the minimum movement amount. If, however, the amount of movement for the block is less than the minimum movement amount, the apparatus synthesizes a block from the current block and the following block of commands, this synthesis with following blocks being continued until the amount of movement called for by the synthesized block is greater than the minimum movement amount, at which point the apparatus performs feed control according to the synthesized block of commands.
More specifically, a numerical control apparatus that achieves the above-noted object has a machining program interpreter for reading in and interpreting a machining program, a one-block movement calculator for calculating the amount of movement called for by one block of commands interpreted by the machining program interpreter, an interpolation calculator for performing interpolation for each block, a movement comparator for comparing the amount of movement required by one block as calculated by the one-block movement calculator and the minimum amount of movement as established by the feed speed and one sampling period of the numerical control apparatus, and passing the commands of a block to the interpolation calculator only if the amount of movement for that block is larger than the minimum movement amount, and a block synthesizer, which if the amount of movement called for by the current block is determined by the above-noted comparison to be smaller than the minimum movement amount, reads ahead to the immediately following block and concatenates that block with the current block.